home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / DJGPP / BCCGRX12.ZIP / contrib / bcc2grx / src / bccgrx11.c < prev    next >
C/C++ Source or Header  |  1993-06-03  |  1KB  |  37 lines

  1. /*
  2.  *  BCC2GRX  -  Interfacing Borland based graphics programs to LIBGRX
  3.  *  Copyright (C) 1993  Hartmut Schirmer
  4.  *
  5.  *  see bccgrx.c for details
  6.  */
  7.  
  8. #include "bccgrx00.h"
  9. #include <stdio.h>
  10.  
  11. #define NRCOLS(nr) ((((nr)&0xcc00)!=0xcc00) ? (nr) : (1 << ((nr) & 0xff)))
  12.  
  13. char *getmodename(int mode_number)
  14. {
  15.   GR_DRIVER_MODE_ENTRY *gm;
  16.   static char result[30];
  17.  
  18.   _DO_INIT_CHECK_RV(NULL);
  19.   __gr_set_up_modes();
  20.   if (mode_number < 0 || mode_number > MM) {
  21.     ERR = grInvalidMode;
  22.     return NULL;
  23.   }
  24.   switch (mode_number) {
  25.     case GRX_DEFAULT_GRAPHICS               : return "default graphics mode";
  26.     case GRX_BIGGEST_NONINTERLACED_GRAPHICS : return "biggest non interlaced graphics mode";
  27.     case GRX_BIGGEST_GRAPHICS               : return "biggest graphics mode";
  28.     case GRX_BGI_EMULATION                  : return "BGI emulation mode";
  29.   }
  30.   gm = &__gr_DATA[__gr_modeindx[mode_number]];
  31.   sprintf(result, "%d x %d x %d", gm->width,
  32.                   gm->height,
  33.                   NRCOLS(gm->number_of_colors));
  34.   return result;
  35. }
  36.  
  37.